/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package infoplaces2;

import java.util.ArrayList;

/**
 *
 * @author Andre Alvarado
 */
public abstract class StreetNode<EnvironmentMapType extends PanoramicImage, NeighbourIDType> {
    
    protected double latitude;
    protected double longitude;
    protected EnvironmentMapType environmentMap;

    public StreetNode(double latitude, double longitude, EnvironmentMapType environmentMap) {
        this.latitude = latitude;
        this.longitude = longitude;
        this.environmentMap = environmentMap;

    }

    public double getLatitude() {
        return latitude;
    }

    public double getLongitude() {
        return longitude;
    }

    public EnvironmentMapType getEnvironmentMap() {
        return environmentMap;
    }
    
    public abstract NeighbourIDType getID();
    
    public abstract NeighbourIDType getNeighbourID(int index);
    
    public abstract int neighboursCount();

    public int lerNumeroMatches() {
        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
    }
    public abstract ArrayList<String> getNeighbours();
}
